package com.lac.component.model;


import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;


/**
 * @author xiaokuixiao
 * date2025/7/30 14:26
 */
@Data
public class GoodsSpu {

    public static final String REFUND_ADDRESS_ID_NAME = "退货地址";

    /**
     * UID
     */
    private static final long serialVersionUID = 1L;

    // ================================================================
    // Fields
    // ================================================================

    /**
     * PK
     */

    private String id;
    /**
     * 所属租户
     */
    private String tenantId;

    /**
     * spu编码
     */

    private String spuCode;
    /**
     * spu名字
     */

    private String name;
    /**
     * 卖点
     */

    private String sellPoint;
    /**
     * 描述
     */

    private String description;
    /**
     * 商品类目
     */

    private String categoryId;

    /**
     * 商城一级分类名称
     */

    private String categoryName;
    /**
     * 商品主图
     */

    private String picUrls;
    /**
     * 上架状态（1上架 0下架 2未上架）
     */
    private String shelf;

    /**
     * 销量
     */
    private Integer saleNum;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 最后更新时间
     */

    private Date updateTime;
    /**
     * 0统一规格；1多规格
     */

    private String specType;
    /**
     * 逻辑删除标记（0：显示；1：隐藏）
     */
    private String delFlag;

    /**
     * 商品隐藏标记（0：显示；1：隐藏）
     */
    private String hiddenFlag;

    /**
     * 积分赠送开关（1开 0关）
     */
    private String pointsGiveSwitch;
    /**
     * 积分赠送数量
     */
    private Integer pointsGiveNum;
    /**
     * 积分抵扣开关（1开 0关）
     */
    private String pointsDeductSwitch;
    /**
     * 积分抵扣商品金额比例（0~100）
     */
    private Integer pointsDeductScale;
    /**
     * 1积分数可抵多少元
     */
    private BigDecimal pointsDeductAmount;
    /**
     * 运费模板ID
     */

    private String freightTemplatId;
    /**
     * 审核状态（0审核中 1审核通过 2审核不通过）
     */
    private String verifyStatus;
    /**
     * 审核明细
     */
    private String verifyDetail;
    /**
     * 创建人用户id
     */
    private String createdUserId;

    /**
     * 供应商id
     */
    private String supplierId;

    /**
     * 供应商类型
     */
    private String supplierType;

    /**
     * spu类型： mall商城，health健康服务，如果多个组合，号隔开
     */

    private String spuType;

    /**
     * 退款有效期
     */

    private String refundExpiryDate;

    /**
     * 品牌id
     */

    private String brandId;

    /**
     * 单位
     */

    private String units;

    /**
     * 不可配送城市，多个逗号隔开
     */

    private String notDeliveryRegionCode;

    /**
     * 是否首次上架，默认首次上架（数据库值等于0为false,非首次； 数据库值等于1为true，首次）
     */
    private Boolean isFirstShelf;

    /**
     * 父spu的id，关联上级供应商spu的id
     */
    private String parentId;

    /**
     * 商品类型1实物商品2服务商品3虚拟商品
     */

    private String goodsType;

    /**
     * 下级供应商的id，初始创建的为当前供应商的id
     */
    private String parentSpuSupplierId;

    /**
     * 溯源开关（1开 0关）
     */

    private String traceSourceSwitch;

    /**
     * 退货地址id
     */

    private String refundAddressId;

    /**
     * 退货地址类型
     */

    private Integer refundAddressType;

    /**
     * e家分享可见标识(默认0不可见 1可见)
     */

    private Integer visibleFlag;


    /**
     * 生效日期，多规格使用一个生效日期，该字段记录在goods_spu_operation_log中
     */

    private Date effectiveDate;

    /**
     * 视频号品牌id
     */
    private String videoBrandId;

    /**
     * 视频号七天无理由退货
     */
    private Integer videoSevenDayReturn;


    /**
     * 生效类型 1:定时上线；2:立即生效
     */
    private Integer effectiveType;



    /**
     * 直播id
     */
    private String liveId;

    /**
     * 第三方商品来源类型
     */
    private String thirdSourceType;

    /**
     * 第三方商品来源id
     */
    private String thirdSourceId;

    /**
     * 配送时效
     */
    private Integer logisticsTime;
}

